|
Menüeintrag |
---|
Part → Teilen → Boolesche Bestandteile |
Arbeitsbereich |
Part |
Standardtastenkürzel |
Keiner |
Eingeführt in Version |
0.17 |
Siehe auch |
Part Auseinanderschneiden, Part XOdeR, Part ObjekteVerbinden, Part BoolescheVerknüpfung |
Das Werkzeug BoolescheBestandteile berechnet alle Bruchteile, die sich aus der Anwendung boolescher Verknüpfungen zwischen Eingabeformen ergeben können. So werden beispielsweise aus zwei sich schneidende Kugeln drei nicht überlappende, aber berührende Festkörper erzeugt.
Auf dem obigen Bild wurden die Teile anschließend manuell auseinandergezogen, um die Schnitte zu erkennen.
Die Ausgabeform ist immer ein Verbund. Der Inhalt des Verbundes hängt von der Art der Eingangsformen und der Betriebsart ab. Das bedeutet, dass man nicht sofort Zugriff auf einzelne Bestendteile des Ergebnisses hast - die Teile bleiben gruppiert. Die einzelnen Stücke können durch Auflösen des Verbundes entnommen werden (Draft Zurückstufen).
Das Werkzeug verfügt über drei Modi: "Standard", "Teilen" und "VerbundFestkörper".
"Standard" und "Teilen" unterscheiden sich durch die Wirkung des Werkzeugs auf Drähte, Hüllen und Verbundkörper: Wenn "Teilen", werden diese getrennt; wenn "Standard", werden sie zusammen gehalten (erhalten zusätzlicher Segmente).
Die Verbundstruktur im "Standard" und "Teilen" Modus folgt der Verbundstruktur der Eingänge. Das heißt, wenn du zwei Verbindungen einspeist, die jeweils eine Kugel enthalten, wie zum Beispiel oben, enthält das Ergebnis auch zwei Verbünde, die jeweils die Stücke der ursprünglich enthaltenen Kugel enthalten. Das bedeutet, dass das vereinigte Stück zweimal im Ergebnis wiederholt wird. Nur wenn die Eingangskugeln beide nicht in Verbünden vorliegen, enthält das Ergebnis das vereinigte Stück einmal.
Im "Verbundkörper" Modus werden die Festkörper zu einem Verbundkörper verbunden (Verbundkörper ist ein Satz von Festkörpern, die durch Flächen verbunden sind; sie sind mit Festkörpern verbunden, wie Drähte mit Kanten und Schalen mit Flächen; der Name ist wahrscheinlich ein verkürzter Satz "Verbundkörper"). Die Ausgabe ist eine nicht verschachtelte Verbindung von Verbundkörpern.
Boolesche Fragmente
Das Werkzeug Boolesche Bestandteile im "Standardmodus" ist der allgemeine Verschmelzungs-Operator (engl.: General Fuse Operator (GFA)) von OpenCascade. Es akzeptiert eine Kombination von wahrscheinlich allen Formtypen, und die Logik der Ausgabe ist ziemlich kompliziert. Siehe OpenCascade Benutzerhandbuch: Boolesche Verknüpfungen.
Für die Modi "Teilen" und "VerbundKörper" erfolgt eine zusätzliche Nachbearbeitung durch FreeCAD.
Das Werkzeug kann in Makros und von der Python-Konsole aus mit der folgenden Funktion verwendet werden:
BOPTools.SplitFeatures.makeBooleanFragments(name)
BoolescheFragmente kann auch auf einfache Formen angewendet werden, ohne dass ein Dokumentobjekt erforderlich ist, via:
import BOPTools.SplitAPI
BOPTools.SplitAPI.booleanFragments(list_of_shapes, mode, tolerance = 0.0)
# OR, for Standard mode:
list_of_shapes = [App.ActiveDocument.Sphere.Shape, App.ActiveDocument.Sphere001.Shape]
pieces, map = list_of_shapes[0].generalFuse(list_of_shapes[1:], tolerance)
# pieces receives a compound of shapes; map receives a list of lists of shapes, defining list_of_shapes <--> pieces correspondence
Dies kann nützlich sein, um benutzerdefinierte Python Skriptfunktionen zu erstellen.
Beispiel:
import BOPTools.SplitFeatures
j = BOPTools.SplitFeatures.makeBooleanFragments(name= 'BooleanFragments')
j.Objects = FreeCADGui.Selection.getSelection()
Das Werkzeug selbst ist in Python implementiert, siehe /Mod/Part/BOPTools/SplitFeatures.py unter dem FreeCAD installiert ist.
Das Werkzeug wurde in FreeCAD v0.17.8053 eingeführt. FreeCAD muss mit OCC 6.9.0 oder höher kompiliert werden, da das Werkzeug sonst nicht verfügbar ist.